#include <bits/stdc++.h>
using namespace std;

int main(void){
//	map<int,int> a;
	int a[100000];
	memset(a,sizeof(int)*100000,0);
	int n=0,temp=0,x=0,y=0,max=0,i,j;
	long long int sum=0;
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>temp;
		a[temp]++;
		if(temp>max)max=temp;
	}
	for(i=max;i!=0;--i){
		if(a[i]<2)continue;
		x=(a[i]*(a[i]-1))/2;

		for(j=i-1;j*2>i;--j){
			if(a[i-j]!=0){
				y=a[j]*a[i-j];
				sum+=x*y;
				sum%=1000000007;
			}
		}
		if(j*2==i&&a[j]>1){
			y=(a[j]*(a[j]-1))/2;;
			sum+=x*y;
			sum%=1000000007;
		}
	}
	cout<<sum;

	return 0;
}
